package club.ruanx.auth.vcode.factory;

import club.ruanx.auth.vcode.enumeration.ValidateCodeType;

import java.io.IOException;

/**
 * 验证码处理器
 *
 * @author 阮胜
 * @date 2018/9/30 13:10
 */
public interface ValidateCodeProcessor {

    /**
     * 创建并保存和发送验证码 , 验证码的生成由 {@link ValidateCodeGenerator} 控制
     *
     * @param validateCodeType
     * @return
     */
    void create(ValidateCodeType validateCodeType) throws IOException;


    /**
     * 校验验证码
     */
    void validate(String vcode, ValidateCodeType validateCodeType);
}
